Network links have traditionally been the limiting factor of network transfers between nodes. This is primarily due to the performance of the network link being slower than the performance of the memory hierarchy within the nodes. Consequently, data communication protocols have been designed to inject data as fast as possible into the network in order to minimize latency and achieve high bandwidth. These communication protocols are suitable as long as the sink bandwidth of the memory hierarchy within the nodes is able to sustain the rate of egress from the network.
The advent of non-volatile memory (NVM) technologies introduces an interesting nuance to the node level memory hierarchy. NVM provides higher density, lower cost, and lower power consumption than conventional dynamic random-access memory (DRAM). Given these benefits, NVM is being deployed in a variety of environments, including high performance datacenter systems, data-intensive scientific and data-analysis systems, and high performance computing (HPC) systems, to name a few. In many of these systems, high performance network fabrics have reached 100 Gb/s speeds, which results in a source/sink mismatch in that the high performance network fabric bandwidth is significantly higher than the write bandwidth of the NVM. In these environments, network transfers using conventional communication protocols are likely to overwhelm the receiver due to the source/sink mismatch.
In the following detailed description, reference is made to the accompanying drawings, which form a part hereof In the drawings, similar symbols typically identify similar components, unless context dictates otherwise. The illustrative embodiments described in the detailed description, drawings, and claims are not meant to be limiting. Other embodiments may be used, and other changes may be made, without departing from the spirit or scope of the subject matter presented herein. The aspects of the present disclosure, as generally described herein, and illustrated in the Figures, can be arranged, substituted, combined, separated, and designed in a wide variety of different configurations, all of which are explicitly contemplated herein.